1. Field Of The Invention
The present invention relates to wireless spread spectrum time-division multiple access (TDMA) communications systems and, more particularly, to wireless digital communications between pairs of Remote Units (RU) among a plurality of RU's organized into a communications network by a Master Unit (MU) which authorizes, schedules and controls all network transmissions. The invention is directed to a protocol method and a transceiver apparatus implementing and utilizing the protocol, common to each RU and the MU, which enable any network RU, when authorized by the MU, to transmit digital information at a rate of the order of one to several megabits per second (Mbps) directly to any other network RU or to the MU. Applications include a wireless local area network (LAN) comprised of personal computers (PC) exchanging files and sharing peripheral equipment such as printers and FAX machines, a network comprised of notebook and palmtop computers some or all of which may be in relative motion, a vehicle location system wherein a fixed station continuously tracks the locations of moving vehicles in its vicinity, wireless private branch exchange (PBX) telephone networks, and two-way telemetry among specialized computers such as patient monitors and artificial intelligence diagnostic devices.
The Federal Communications Commission (FCC) has recognized the need for low powered wireless transmission systems that do not require user licensing. Three frequency bands have been allocated for transmissions utilizing direct-sequence spread spectrum (DSSS), frequency hopping (FH), and hybrid DSSS/FH modulation formats. Specifically, these frequency bands are 902-928 MHz, 2400-2483.5 MHz, and 5725-5850 MHz. The 902-928 MHz band is relatively narrow and crowded with such devices as cordless telephones, store security systems and paging systems. The other two bands offer sufficient bandwidth to transmit information at megabit data rates and presently are more free of interference from other types of devices than is the 902-928 MHz band.
The term "spread spectrum" is defined as any of a group of modulation formats in which a radio frequency (RF) bandwidth much greater than necessary is used to transmit an information signal so that a signal-to-interference improvement may be gained. The energy contained in a base-band signal is spread over a broad-band in a pseudo-random manner during transmission and the narrow-band signal is retrieved during reception. The term "direct-sequence" is defined as a form of spread spectrum modulation wherein a code sequence is used to directly modulate a carrier. In DSSS communications, a transmitter modulates the carrier with a pseudo-random digital sequence (PRDS) from a pseudo-random code generator (PRCG) whose "chip" rate is much higher than the symbol rate of the information signal transmitted. Each symbol of the information signal is individually encoded by multiple chips, typically 32 to 512 chips per symbol. A receiver demodulates the carrier so as to decode the information signal by adjusting the phase of a PRDS code, generated by a local PRCG and identical to the transmitted PRDS code, to correlate (or "synchronize") with the transmitted PRDS code. For proper despreading of the digital information to occur, the locally generated PRDS code must exactly align with the transmitted PRDS code, in particular by taking into account the shift in phase due to delay of reception resulting from the finite speed of electromagnetic wave propagation.
TDMA takes advantage of a transmission medium which can support a higher data rate than is required to satisfy individual network users. Essentially, multiple digital communications signals are interleaved temporally over a single broadcast transmission within the network, although a specific "virtual link" is created during each separate transmission from a Remote Unit Initiator (RUI) to one or more Remote Unit Recipients (RUR).
As is well known in the art, PRDS's with excellent auto-correlation and cross-correlation properties can be conveniently generated by combining two so-called maximal linear code sequences, each generated by a binary linear feedback shift register. Maximal codes have the following properties: (a) the maximum length sequence is 2.sup.n -1 bits, where n is the number of stages in the shift register; (b) the number of ones is one more than the number of zeroes; (c) the statistical distribution of ones and zeroes is well defined; (d) maximal codes have excellent autocorrelation properties; (e) a modulo-2 addition of a maximal code with a phase-shifted copy of itself generates another copy of itself having a different phase shift; and (f) except for the all-zeroes condition, every possible "n-tuple" state of the n-bit shift register exists once and only once during the code sequence. In particular, PRDS's termed "Gold-codes" are generated by modulo-2 addition of an appropriate pair of maximal linear sequences ("base codes"). Such PRDS's are the same length as the two base codes, but are non-maximal. Each change in register relative position between the two base code generators creates a new PRDS, so that 2.sup.n -1 Gold-code sequences, each 2.sup.n -1 bits in length, can be generated from a pair of n-register generators.
Although PRDS codes and specifically Gold-codes are commonly used in DSSS communication systems, difficulties heretofore inherent in rapidly synchronizing two long code sequences have tended to constrain designers to use short sequences, typically of the order of tens to hundreds of chips, particularly in applications utilizing low-cost, low-power hardware rather than high precision master and chip clocks and acquisition, tracking and correlation-testing circuitry. Use of a short PRDS code is not a disadvantage for an application which does not require significant process gain. For example, a short code may suffice for a short-range communication system operating in a general area where no other spread spectrum communications systems are operating. However, should there be multiple PRDS codes concurrently transmitted by neighboring systems, use of a long code is essential both to achieve process gain which can overcome noise interference caused by the other systems, and to reduce the probability of a "collision", i.e., choosing a code already in use, such probability increasing as the number of competing systems increases and their code sequence lengths decrease. For example, if there are ten coexisting networks, each using a 255-chip PRDS so there are 255 possible code sequences, and all are transmitting at a given time, there is a 0.15 probability that a particular network, having randomly selected a code, will collide with at least one other network. If there are forty such networks, the probability of collision remains close to unity, even after selecting another code in the first instance of a collision.
The interrelated problems of rapid PRDS synchronization and collision avoidance become particularly severe for a wireless DSSS network having a large number of RU's and operating TDMA. During any given time period, multiple RU's generally will be wanting to transmit. These are likely to be a random subset of the RU's in the network, each perhaps with a different length message and different intended recipient(s). For example, some RU's may want to transmit short "bursty" messages while others want to transmit long messages. To increase the percentage of time when information is being transmitted over the network, it is necessary to reduce the percentage of time needed to perform "overhead" functions such as designating and switching among RUI's, alerting RU's that an attempt will be made to send them a message, i.e., informing them they have been designated as RUR's, and attempting and testing for PRDS correlation between Remote Units. But using short PRDS codes to simplify correlation in the hope of reducing overhead time risks increasing overhead time because of increased susceptibility to collisions due to identical PRDS codes being used by neighboring "sibling" networks.
For DSSS TDMA networks which use a "contention" -type protocol rather than a time division ("slotted") protocol, collisions can occur not only because of interference from sibling networks, but also because RUI's within a network are contending for transmission access time. Traditional slotted systems, even when dynamic allocation is employed, suffer from inefficiencies encountered from trying to accommodate both bursty and high duty cycle RUI's. This type of collision problem becomes increasingly severe as the number of RU's in a network increases, the percentage of RU's wanting to transmit within the same time frame increases, and the average message length increases.
2. Description Of The Related Art
The problem of increasing data transmission time in a wireless DSSS TDMA network having a large number of users by reducing PRDS synchronization time has been addressed in the art. U.S. Pat. No. 5,206,881 ("'881") to S. Messenger et al. is directed to a method and apparatus for synchronizing an MU serving as a communications controller regulating data transfer throughout an LAN, with RU's which sequentially transmit messages to the MU after being polled by the MU.
The method involves transmitting from a "source" station, typically but not necessarily the MU, a synchronizing packet which is DSSS-encoded with a PRDS code and adjusting the phase of the PRDS code of each of the other stations to a phase value which synchronizes that station's PRDS code with the synchronizing packet. Transmission of the synchronizing packet and initial phase adjusting of the various RU's occur before data packets are transmitted. The synchronizing packet has a phase corresponding to that of the source station PRDS code at the time of its transmission. When the PRDS codes of the other stations are adjusted to synchronize to the packet, their phases then correspond to the current phase of the source station, delayed by an amount corresponding primarily to packet transit time. Each RU performs a wide-range search for a phase value synchronizing its PRDS code with the synchronization packet by repeatedly selecting different phase values over a range of phases corresponding to the maximum possible phase difference between itself and the source station, producing phase-shifted PRDS codes, combining the phase-shifted PRDS codes with the synchronizing packet to produce test signals, and detecting the synchronizing phase value by comparing the test signals. Once the synchronizing phase has been found, the RU switches to a narrow-range search for phase values synchronizing its PRDS code with each succeeding data packet.
More generally, the method involves switching from the wide-range search mode to the narrow-range search mode in response to detection of a phase value synchronizing the PRDS code of the RU with a received data packet, and switching from the narrow-range mode to the wide-range mode whenever a predetermined period of time has expired from detection of a synchronizing phase value.
U.S. Pat. No. 5,276,703 ("'703") to D. Budin et al. also addresses the problem of increasing data transmission time in a wireless DSSS TDMA network having a large number of users. The '703 patent is directed to a method and apparatus for reducing contention-type collisions in an LAN, and also mitigating multipath effects due to reflections of radio waves from local objects. An MU is in radio communication with a plurality of RU's via a down-link channel operating at a frequency of 5780 MHz. All transmissions from the RU's to the MU are via an up-link channel operating at 2440 MHz. The MU controls all communications occurring over the wireless network and also serves as agent for all network management functions such as collecting performance and error statistics. Communications between RU's can occur only when an RU first transmits a message to the MU via the up-link channel, the MU immediately rebroadcasting the message via the down-link channel.
The method includes a communications protocol combining a common slotted time frame with TDMA dynamic slot allocation. Information is transmitted over the network as discrete packets. During a period when the MU is imposing a common slotted time frame, RU's requiring use of the up-link channel utilize assigned time slots to send short Transmit Request Codes (TRC) to the MU. Thereafter, the MU may dynamically change the number of packets that a particular RU may transmit pursuant to a single transmission request. The MU may also assign more than one time slot to a particular RU, so that high priority users are serviced more often. Once granted access to the up-link channel, an RU has sole control until completing its transmission. Access time can be regulated by limiting the number and size of data packets that an RU is allowed to transmit after any single transmission request is granted.
Collisions could occur when one RU is transmitting and another RU wishes to request access to the up-link channel. The requesting RU must not only synchronize itself to a preassigned time slot, but must also ensure that the MU has not allocated sole control of the channel to another RU. To ensure the channel has not previously been allocated, the MU imposes a "listen before talk" protocol. Thus, prior to broadcasting a request, an RU monitors the down-link channel to determine that no other RU is in the midst of transmitting.
Collisions could also occur as a result of the round trip communications delay between the MU and RU's. So the MU also imposes a "listen while talk" collision detection approach. Each RU monitors the down-link channel during transmission to ensure that its message was correctly received by the MU. If the transmitting RU determines that its signal is not being correctly received by the MU, it terminates transmission, relinquishes control of the up-link channel, and waits for its assigned time slot to occur so it can once again request control of the up-link channel.
U.S. Pat. No. 5,177,765 ("'765") to B. M. Holland et al. is directed to a method and apparatus for rapidly acquiring a DSSS TDMA or time division duplex (TDD) signal using small, inexpensive circuitry such as is located in portable telephones, and then successfully tracking the incoming spread signal in order to continually despread the digital information. The signal consists of a plurality of frames wherein each frame has a predetermined number of time slots. One time slot is spread with a PRDS code and carries acquisition and synchronization information. The other time slots are spread with other PRDS codes and contain communication data including header bytes used for tracking the acquired signal.
The method involves utilizing a PRCG whose random sequence output can be moved in time to match the random sequence in the received spread signal. During acquisition, the signal strength in each successive time slot for each frame is measured for a given number of time frames. The received signal is acquired by adjusting the PRCG so that the incoming signal strength is sampled at a point in time when the transmitted signal is present. The PRCG is then adjusted to the point in the sequence that corresponds with the maximum signal strength. A major acquisition sweep approximately locates the peak within a frame; then a refinement sweep precisely locates the peak and identifies the frame and time slot boundaries.
Tracking is similar to the acquisition process. After acquisition is completed, tracking occurs during the header bytes found at the beginning of each successive time slot. Thus, tracking is completed before the data portion within a time slot is received. The amount that the PRCG is to be adjusted is small when tracking because it must adjust only for the amount of drift between the transmitter clock and receiver clock that has occurred since the prior frame.
Rather than using a conventional PRDS having 2.sup.n -1 chips, the '765 invention adds an extra chip so that the ratio of the length, M, of the PRDS to the number of chips per digital bit of information, CB, is an integer. Since a PRDS occurs a fixed number of times within a time slot, B.sub.ts * M/CB is also an integer, where B.sub.ts is a predetermined number of digital bits per time slot. All PRDS codes are M chips in length and have the same CB value. This digital timing technique enables digital bit boundaries to be aligned on CB boundaries. That is, one digital bit of information is precisely aligned, in time, to a predetermined number of PRDS chips.
None of the above-cited references is directed to solving the problem of how RU's within a network can communicate directly with one another while adhering to the constraints imposed by the FCC on unlicensed users of the 902-928 MHz, 2400-2483.5 MHz and 5725-5850 MHz frequency bands, and while restricting all transmissions to a common one of these bands. If RU's within a DSSS TDMA network can bypass an intermediary node such as an MU when sending messages to other RU's, so that a message need not, in effect, be transmitted twice, network throughput can be doubled.
Nor do these references address the problems of achieving process gain to overcome interference from neighboring spread spectrum systems and avoiding collisions with neighboring sibling networks. Solution of these problems requires using long PRDS codes while being able to perform timely switching among RU's and rapid synchronization, acquisition and tracking for each successive virtual link in a TDMA network. The '881, '703 and '765 inventions use PRDS's which are 127, 48 and 128 chips long, respectively.
In view of the limitations of the above-cited methods and associated devices, there has been a need for a protocol method and a device implementing the protocol whereby a large number of unlicensed user RU's, typically several hundred, can be organized into a half-duplex TDMA wireless network wherein any RU can transmit information at a rate of the order of one to several Mbps directly to any other RU or to the MU over one of the three FCC-mandated spread spectrum bands. There further has been a need for a protocol and implementing device whereby a plurality of such networks within a general area densely populated with wireless LAN's such as a large office building complex can coexist without mutual interference.